home *** CD-ROM | disk | FTP | other *** search
- * v1.10, day, December 27, 2004
-
- Make utf8 enabled by default (if available).
-
- perl 5.6 is now required.
-
- Remove dependency on Symbol.pm.
-
- Use three-arg open. (Alex Marandon)
-
- Make reading of genres a bit more nimble. (Brian S. Stephan)
-
- Fix frame counting. (Ben Winslow, Anthony DiSante)
-
- Fix syncsafe byte reading. (Pierre-Yves Thoulon, et al)
-
- Some Unicode fixes. (Ilya Konstantinov)
-
- More changes for Unicode. Unicode::String no longer used; Encode is used
- instead. Encode::Guess used as last resort. (Dan Sully)
-
- Optimizations and other fixes. (michael, Dan Sully)
-
- Support for reading ID3v2 tags from WAV and AIFF files. Not fully
- supported. (Dan Sully)
-
- * v1.02, Sunday, March 2, 2003
-
- Fix broken argument parsing for use_mp3_utf8. (Ben Gertzfield)
-
- Document that UTF8 can be access in ":all" export tag. (Ben Gertzfield)
-
- Better document for new() method.
-
- Add can() method. (Ken Williams)
-
- Stick failure warnings in $@. (Jeffrey Friedl)
-
- Added support for reasonable data from ID3v2 tags with RAW_V2 == 2.
- (brian d foy and others)
-
- Deal with broken iTunes comment frames in ID3v2.3.0/2.4.0. (Many users)
-
- remove_mp3tag() was reporting 128 bytes removed even if no bytes were
- removed. (scfc_de)
-
- Allow calling methods on objects where tag does not exist (e.g., don't fail
- if there is no comment but you call $mp3->comment).
-
- Various bugfixes.
-
-
- * v1.01, Friday, February 26, 2002
-
- That was less reasonable than previously thought. Just strip off text
- encoding bit, and then bytes for language and "up to first null" if COMM
- field (COMM fields can have an extra comment about the comment, which is
- terminated with a NULL, of course ...). Some encoders like to put in an
- extra NULL at the end; plus, it was doing the wrong thing for
- non-Latin-1 text. (Ben Gertzfield)
-
- Also make it work better with ID3v2.2 tags, and make a more reasonable
- guess at which comment to use if there's more than one.
-
- Add some support for ID3v2.4.0 and Unicode strings in tags; see
- use_mp3_utf8. (Ben Gertzfield)
-
- Add TAGVERSION to get_mp3tag result.
-
-
- * v1.00, Tuesday, January 22, 2002
-
- Get more reasonable data out of ID3v2 tags by stripping up to
- last null in tag.
-
- Don't get FRAME_LENGTH if no FRAMES (Woodrow Hill).
-
-
- * v0.91, Saturday, February 10, 2001
-
- Fix dumb bug with /o. (David Reuteler)
-
- Fix bug where get_mp3tag() would return an empty hashref instead of
- undef if ID3v1 tag is asked for, and there is no ID3v1 tag, but there is
- an ID3v2 tag. (Stuart)
-
-
- * v0.90, Sunday, January 14, 2001
-
- Added experimental OOP support for getting and setting data;
- doesn't work for removing tags.
-
- Made all functions optionally accept filehandle in place of filename.
-
- Remove all croaks/dies and replace with simple returns or carps/warns.
- (Jeffrey Sumler)
-
- Fix various input data problems, bad warnings, division by zero, etc.
-
- Undef $/ in set_mp3tag() so caller can't mess up the print.
-
- Fix bitrate if ID == 0 and VBR. (Kyle Farrell, Per Bolmstedt)
-
- Split off _get_info() from get_mp3info(), so, eventually, programmers
- can access that functionality without passing in a file or filehandle.
- Not supported yet, but available for playing.
-
- Added total frames, leftover milliseconds, and formatted time.
-
- Fixed sample frequency for MPEG 2.5 files (perhaps not including
- VBR, though ... see bug above).
-
- Add in some additional genres. (Peter Marschall)
-
- Added ID3v2 tag removal. (Ronan Waide) NOTE: this is DANGEROUS. It is
- tested, but needs more testing. The file is rewritten entirely. Lots
- of data moving around.
-
- Added ID3v2.2.0 tag reading. (Ronan Waide, Kee Hinckley)
-
- Changed ID3v2 tag recognition to only match [A-Z0-9] instead of \w.
- (Christoph Oberauer)
-
-
- * v0.80, Monday, March 6, 2000
-
- Better stripping of bad data (after nulls) in ID3 tags (Dave O'Neill)
-
- Fixed VERSION in get_mp3info to properly return 2 when appropriate.
- (Bogdan Surdu)
-
- Added VBR support. Average bitrate is returned as BITRATE, and
- minutes and seconds (MM and SS) should be accurate.
- (Andy Waite for pointer to MP3Ext)
-
- Made time calculation better overall.
-
- Made MP3 header validation routines more comprehensive.
- (Matthew Sachs for pointer to xmms source)
-
- Changed name to MP3::Info (with wrapper still named MP3::Info).
-
-
- * v0.71, Thursday, July 8, 1999
-
- Several fixes to ID3v2 support unpack unsigned instead
- of signed, don't bail out after 4096-byte offsets on long ID3v2 headers.
- Thanks much to Matthew Sachs.
-
-
- * v0.70, Saturday, July 3, 1999
-
- Added preliminary ID3v2 reading support in get_mp3tag(). Thanks much
- to Tom Brown.
-
-
- * v0.64, Thursday, July 1, 1999
-
- Found bug in checking TRACKNUM parameter, used \d instead of \d+.
- Only gives spurious warnings, doesn't affect anything else.
-
- Cleaned up a bit, prepare for impending ID3v2 support.
-
- NOTE: truncate() broken in some builds of ActivePerl (517, maybe
- others). No changes to module to fix problem. (Brian Goodwin)
-
-
- * v0.63, Friday, April 30, 1999
-
- Added ID3v1.1 support. (Trond Michelsen, Pass F. B. Travis)
-
- Added 255 (\xFF) as default genre. (Andrew Phillips)
-
- I think I fixed bug relating to spaces in ID3v2 headers. (Tom Brown)
-
-
- * v0.62, Sunday, March 7, 1999
-
- Doc updates.
-
- Fix small unnoticable bug where ID3v2 offset is tag size plus 10,
- not just tag size.
-
- Not publickly released.
-
-
- * v0.61, Monday, March 1, 1999
-
- Fixed problem of not removing nulls on return from get_mp3tag() (was
- using spaces for padding before ... now trailing whitespace and
- all nulls are removed before returning tag info).
-
- Made tests more extensive (more for my own sanity when making all
- these changes than to make sure it works on other platforms and
- machines :).
-
-
- * v0.60, Sunday, February 28, 1999
-
- Cleaned up a lot of stuff, added more comments, made get_mp3info()
- much faster and much more reliable, and added recognition of ID3v2
- headers. (Tom Brown)
-
-
-
- * v0.52, Sunday, February 21, 1999
-
- Fixed problem in get_mp3tag() that changed value of $_ in caller
- (Todd Hanneken).
-
-
- * v0.51, Saturday, February 20, 1999
-
- Fixed problem with %winamp_genres having the wrong numbers
- (Matthew Sachs).
-
-
- * v0.50, Friday, February 19, 1999
-
- Added remove_mp3tag(). Added VERSION to the hash returned by
- get_mp3info(), and fixed a bug where STEREO was not being set
- correctly.
-
- Export all genre data structures on request. Added use_winamp_genres()
- to use WinAmp genres. (Roland Steinbach)
-
- Added a $MPEG::MP3Info::try_harder ($MP3::Info::try_harder)
- variable that will try harder to find the MP3 header in a file. False
- by default. Can take a long time to fail, but should find most headers
- at any offsets if set to true.
-
- Thanks to Matthew Sachs for his input and fixes, and for mp3tools.
-
-
- * v0.20, Saturday, October 17, 1998
-
- Changed name from MPEG::MP3Tag to MPEG::MP3Info, because it does
- more than just TAG stuff now.
-
- Made header stuff even more reliable. Lots of help and testing from
- Meng Weng Wong again. :-)
-
-
- * v0.13, Thursday, October 8, 1998
-
- Had some problems with header verification, got some code from Predrag
- Supurovic with his mpgtools. Great stuff. Also did some looping to find
- a header if it is not in the "right" place. I did what I think it is a
- smart way to do it, since some files have the header as far down as 2
- kbytes into the file. First, I look at position 0, then at position 36
- (a position where I have found many headers), then I start at 0 again
- and jump in 128-byte chunks. Once I do that a bunch of times, I go back
- at the beginning and try at 0 and go ahead in 1-byte chunks for a bunch
- more times.
-
- If you have an MP3 that has the header begin at an odd place like byte
- 761, then I suggest you strip out the junk before the header begins. :-)
-
-
- * v0.12, Friday, October 2, 1998
-
- Added get_mp3info(). Thanks again to mp3tool source from
- Johann Lindvall, because I basically stole it straight (after
- converting it from C to Perl, of course).
-
- I did everything I could to find the header info, but if
- anyone has valid MP3 files that are not recognized, or has suggestions
- for improvement of the algorithms, let me know.
-
-
- * v0.04, Tuesday, September 29, 1998
-
- Changed a few things, replaced a regex with an unpack().
- (Meng Weng Wong)
-
-
- * v0.03, Tuesday, September 8, 1998
-
- First public release.
-